package view.userinteface;
import java.awt.BorderLayout;
import java.awt.GraphicsEnvironment;
import java.awt.Rectangle;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JDesktopPane;
import javax.swing.JLayeredPane;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.WindowConstants;

import beans.BeanUsuario;

/**
 * This code was edited or generated using CloudGarden's Jigloo
 * SWT/Swing GUI Builder, which is free for non-commercial
 * use. If Jigloo is being used commercially (ie, by a corporation,
 * company or business for any purpose whatever) then you
 * should purchase a license for each developer using Jigloo.
 * Please visit www.cloudgarden.com for details.
 * Use of Jigloo implies acceptance of these licensing terms.
 * A COMMERCIAL LICENSE HAS NOT BEEN PURCHASED FOR
 * THIS MACHINE, SO JIGLOO OR THIS CODE CANNOT BE USED
 * LEGALLY FOR ANY CORPORATE OR COMMERCIAL PURPOSE.
 */
public class Menu extends javax.swing.JFrame {
	private static final long serialVersionUID = 1L;
	private JDesktopPane jDesktopPane1;
	private JMenuBar jMenuBar1;
	private JMenuItem jMenuItem4;
	private JMenuItem jMenuItemAltaItem;
	private JMenu jMenuCliente;
	private JMenu jMenuProveedor;
	private JMenu jMenuRodamientos;
	private JMenuItem jMenuItem3;
	private JMenuItem jMenuItem2;
	private JMenuItem jMenuItem1;
	private JButton btnSalir;
	private JMenuItem jMenuItemModificacion;
	private JMenuItem jMenuItemBaja;
	private JMenuItem jMenuItemAlta;
	private JMenu jMenu1;
	private BeanUsuario beanUsuario;
	private JMenuItem jMenuItem5;
	private JMenu jMenu2;

	public Menu(BeanUsuario beanUsuario) {
		super();
		this.beanUsuario = beanUsuario;
		initGUI();
	}

	private void initGUI() {
		try {
			setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
			BorderLayout thisLayout = new BorderLayout();
			getContentPane().setLayout(thisLayout);
			Rectangle maxBounds = GraphicsEnvironment.getLocalGraphicsEnvironment().getMaximumWindowBounds();
			this.setSize(maxBounds.width, maxBounds.height);
			this.setTitle("Menu");
			{
				jDesktopPane1 = new JDesktopPane();
				getContentPane().add(jDesktopPane1, BorderLayout.CENTER);
				{
					btnSalir = new JButton();
					jDesktopPane1.add(btnSalir, JLayeredPane.DEFAULT_LAYER);
					btnSalir.setText("Salir");
					int x = (int)maxBounds.getCenterX();
					int y = (int)maxBounds.getMaxY()-100;
					btnSalir.setBounds(x, y, 69, 25);
					btnSalir.addActionListener(new ActionListener() {
						public void actionPerformed(ActionEvent evt) {
							dispose();
						}
					});
				}
			}
			{
				jMenuBar1 = new JMenuBar();
				setJMenuBar(jMenuBar1);
				{

					jMenu1 = new JMenu();
					jMenuBar1.add(jMenu1);
					jMenu1.setText("Administracion");
					if(this.beanUsuario.getPerfil().canModifyClientes() && !this.beanUsuario.getPerfil().isOficinaVenta()){
						{
							jMenuCliente = new JMenu();
							jMenu1.add(jMenuCliente);
							jMenuCliente.setText("Cliente");
							{
								jMenuItemAlta = new JMenuItem();
								jMenuCliente.add(jMenuItemAlta);
								jMenuItemAlta.setText("Alta");
								jMenuItemAlta.addActionListener(new ActionListener() {
									public void actionPerformed(ActionEvent evt) {
										JInternalFrameAltaCliente altaCli = new JInternalFrameAltaCliente();
										altaCli.setVisible(true);
										jDesktopPane1.add(altaCli);

									}
								});
							}

							{
								jMenuItemBaja = new JMenuItem();
								jMenuCliente.add(jMenuItemBaja);
								jMenuItemBaja.setText("Baja");
								jMenuItemBaja.addActionListener(new ActionListener() {
									public void actionPerformed(ActionEvent evt) {
										JInternalFrameBajaCliente bc = new JInternalFrameBajaCliente();
										bc.setVisible(true);
										jDesktopPane1.add(bc);
									}
								});
							}
							{
								jMenuItemModificacion = new JMenuItem();
								jMenuCliente.add(jMenuItemModificacion);
								jMenuItemModificacion.setText("Modificacion");
								jMenuItemModificacion.addActionListener(new ActionListener() {
									public void actionPerformed(ActionEvent evt) {
										JInternalFrameModificarCliente mc = new JInternalFrameModificarCliente();
										mc.setVisible(true);
										jDesktopPane1.add(mc);
									}
								});
							}
						}
					}
					if(this.beanUsuario.getPerfil().canModifyProveedor()){
						{
							jMenuProveedor = new JMenu();
							jMenu1.add(jMenuProveedor);
							jMenuProveedor.setText("Proveedor");
							{
								jMenuItem1 = new JMenuItem();
								jMenuProveedor.add(jMenuItem1);
								jMenuItem1.setText("Alta");
								jMenuItem1.addActionListener(new ActionListener() {
									public void actionPerformed(ActionEvent evt) {
										JInternalFrameAltaProveedor j = new JInternalFrameAltaProveedor();
										j.setVisible(true);
										jDesktopPane1.add(j);
									}
								});
							}
							{
								jMenuItem2 = new JMenuItem();
								jMenuProveedor.add(jMenuItem2);
								jMenuItem2.setText("Baja");
								jMenuItem2.addActionListener(new ActionListener() {
									public void actionPerformed(ActionEvent evt) {
										JInternalFrameBajaProveedor bp = new JInternalFrameBajaProveedor();
										bp.setVisible(true);
										jDesktopPane1.add(bp);
									}
								});
							}
							{
								jMenuItem3 = new JMenuItem();
								jMenuProveedor.add(jMenuItem3);
								jMenuItem3.setText("Modificacion");
								jMenuItem3.addActionListener(new ActionListener() {
									public void actionPerformed(ActionEvent evt) {
										JInternalFrameModificarProveedor mp = new JInternalFrameModificarProveedor();
										mp.setVisible(true);
										jDesktopPane1.add(mp);
									}
								});
							}
						}
					}
					if(this.beanUsuario.getPerfil().canModifyRodamientos() && !this.beanUsuario.getPerfil().isOficinaVenta()){
						{
							jMenuRodamientos = new JMenu();
							jMenu1.add(jMenuRodamientos);
							jMenuRodamientos.setText("Rodamiento");
							{
								jMenuItemAltaItem = new JMenuItem();
								jMenuRodamientos.add(jMenuItemAltaItem);
								jMenuItemAltaItem.setText("Alta");
								jMenuItemAltaItem.addActionListener(new ActionListener() {
									public void actionPerformed(ActionEvent evt) {
										JInternalFrameAltaRodamiento ai = new JInternalFrameAltaRodamiento();
										ai.setVisible(true);
										jDesktopPane1.add(ai);
									}
								});
							}
							{
								jMenuItem4 = new JMenuItem();
								jMenuRodamientos.add(jMenuItem4);
								jMenuItem4.setText("Buscar Rodamiento");
								jMenuItem4.addActionListener(new ActionListener() {
									public void actionPerformed(ActionEvent evt) {
										JInternalFrameBajaModificacionRodamiento bmr = new JInternalFrameBajaModificacionRodamiento();
										bmr.setVisible(true);
										jDesktopPane1.add(bmr);
									}
								});
							}
						}
					}
				}
				{
					jMenu2 = new JMenu();
					jMenuBar1.add(jMenu2);
					jMenu2.setText("Administracion Listas");
					{
						jMenuItem5 = new JMenuItem();
						jMenu2.add(jMenuItem5);
						jMenuItem5.setText("Alta Lista de Precios");
						jMenuItem5.addActionListener(new ActionListener() {
							public void actionPerformed(ActionEvent evt) {
								JInternalFrameAltaListaPrecios a = new JInternalFrameAltaListaPrecios();
								jDesktopPane1.add(a);

							}
						});
					}
				}
			}
			//			pack();
			//			this.setSize(800, 600);
		} catch (Exception e) {
			//add your error handling code here
			e.printStackTrace();
		}
	}

	public BeanUsuario getBeanUsuario() {
		return beanUsuario;
	}

	public void setBeanUsuario(BeanUsuario beanUsuario) {
		this.beanUsuario = beanUsuario;
	}



}
